package com.ruoyi.web.sso.mapper;

import java.util.List;
import com.ruoyi.web.sso.domain.AppEdition;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

/**
 * APP版本Mapper接口
 * 
 * @author ruoyi
 * @date 2023-04-13
 */
public interface AppEditionMapper 
{
    /**
     * 查询APP版本
     * 
     * @param id APP版本主键
     * @return APP版本
     */
    public AppEdition selectAppEditionById(String id);

    /**
     * 查询APP版本列表
     * 
     * @param appEdition APP版本
     * @return APP版本集合
     */
    public List<AppEdition> selectAppEditionList(AppEdition appEdition);

    /**
     * 新增APP版本
     * 
     * @param appEdition APP版本
     * @return 结果
     */
    public int insertAppEdition(AppEdition appEdition);

    /**
     * 修改APP版本
     * 
     * @param appEdition APP版本
     * @return 结果
     */
    public int updateAppEdition(AppEdition appEdition);

    /**
     * 删除APP版本
     * 
     * @param id APP版本主键
     * @return 结果
     */
    public int deleteAppEditionById(String id);

    /**
     * 批量删除APP版本
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteAppEditionByIds(String[] ids);

    @Select("SELECT * FROM `app_edition` where appId like CONCAT(  #{appId} )  and type = #{type}   and  `code` > #{code} and wrapType = #{wrapType}  ORDER BY `code` DESC LIMIT 1 ")
    public AppEdition getEditionCode(@Param("appId")String appId, @Param("code")Integer code, @Param("type")Integer type, @Param("wrapType")String wrapType);
}
